La función de autenticación en Embedded Wallets simplifica la gestión de cuentas, la autenticación y el control de sesiones para su aplicación.
OAuth
(o ticket de PlayFab), correo electrónico, o como un Guest Wallet
efímero para brindar funciones de wallet.
Antes de poder usar el SDK de Sequence WaaS, debe obtener las siguientes claves de configuración desde el Sequence Builder:
WaaSConfigKey
: Puede obtener más información sobre esta clave aquíProjectAccessKey
: Puede obtener más información sobre esta clave aquíconfig.ts
:
idToken
JWT (o ticket de PlayFab) del método de autenticación social, que normalmente tiene el formato eyJh...
si es un token OAuth
y páselo a la función signIn
:
guest
configurada en true
, lo que creará un wallet efímero para usar en la aplicación con todas las funciones de Embedded Wallet disponibles.
idToken
, la dirección de correo electrónico autenticada se devuelve en la propiedad email
del objeto retornado:
sequence.onEmailConflict
indicando que la cuenta ya existe para que su aplicación lo gestione. En este caso, puede decidir cómo proceder:
forceCreate
en el callback. La advertencia de que la cuenta ya existe será ignorada y se creará una segunda dirección de wallet separada para el usuario, asociada al proveedor de inicio de sesión diferente.onEmailConflict
con forceCreate
para crear un segundo wallet para el usuario:
titleId
configurado y un identificador único de usuario como CustomId
. Por ejemplo, la llamada sería así:
signIn
de Sequence como parámetro para autenticar al usuario y crear una sesión válida:
Invalid Verifier
.
@react-oauth/google
para generar un idToken
y pasarlo a Sequence:
Comience con un archivo main.tsx
simple que configure el SDK de WaaS, el router y el proveedor de Google OAuth.
GoogleLogin
del paquete @react-oauth/google
para la autenticación con Google. Una vez autenticado, se activa la función handleGoogleLogin
cuando el usuario inicia sesión exitosamente en Google.
idToken
y pasarlo al Embedded Wallet SDK.
Para hacer esto con la sesión iniciada en la web usando @stytch/react
, utilice el paquete browser-cookies
para obtener el stytch_session_jwt
de las cookies después del callback, una vez que se haya completado el redireccionamiento:
idToken
iss
(también llamado Issuer) (string) - El emisor del token. Para tokens de Google, normalmente es una URL como https://accounts.google.com o algo similar.azp
(también llamado Authorized party) (string) - El ID de cliente del presentador autorizado. Esta propiedad se usa en Google OAuth 2.0 para identificar la parte que utiliza el token.aud
(también llamado Audience) (string) - Audiencia prevista del token. Normalmente, es el ID de cliente de su aplicación.sub
(también llamado Subject) (string) - Identificador único del usuario. Se utiliza para identificar al usuario en varios sistemas.hd
(también llamado Hosted Domain) (string) - Indica que el usuario autenticado pertenece al dominio correspondiente.email
(string) - Dirección de correo electrónico del usuario, registrada en el servicio de autenticación.email_verified
(boolean) (string) - Un valor booleano que indica si la dirección de correo electrónico ha sido verificada como auténtica.nonce
(string) - Cadena utilizada para asociar una sesión de cliente con un ID token y mitigar ataques de repetición.name
(string) - Nombre completo del usuario registrado en el servicio de autenticación.picture
(string) - URL de la foto de perfil del usuario.given_name
(string) - Primer nombre del usuario.family_name
(string) - Apellido del usuario.iat
(también llamado Issued at) (number) - Marca de tiempo en la que se emitió el token, representada en tiempo Unix (segundos desde el 1 de enero de 1970).exp
(también llamado Expiration time) (number) - Marca de tiempo de expiración del token; después de este momento, el token ya no es válido.idToken
iss
(string) - El campo issuer identifica la entidad que emite el token de identidad. Como Apple genera el token, el valor es https://appleid.apple.com.sub
(string) - El campo subject identifica la entidad que es el sujeto del token de identidad. Como este token es para su app, el valor es el identificador único del usuario.aud
(string) - El campo audience identifica el destinatario del token de identidad. Como el token es para su app, el valor es el client_id de su cuenta de desarrollador.iat
(number) - El campo issued at indica la hora en que Apple emite el token de identidad, en segundos desde la época Unix en UTC.exp
(number) - El campo expiration time indica la hora en que expira el token de identidad, en segundos desde la época Unix en UTC. El valor debe ser mayor que la fecha y hora actual al verificar el token.nonce
(string) - Cadena para asociar una sesión de cliente con el token de identidad. Este valor ayuda a mitigar ataques de repetición y solo está presente si lo envía en la solicitud de autorización.nonce_supported
(boolean) - Valor booleano que indica si la transacción se realiza en una plataforma que soporta nonce. Si envía un nonce en la solicitud de autorización pero no lo ve en el token, revise este campo para decidir cómo proceder. Si es true, trate el nonce como obligatorio y rechace la transacción; de lo contrario, puede continuar tratándolo como opcional.email
(string) - Valor de tipo string que representa la dirección de correo electrónico del usuario. Puede ser la dirección real del usuario o una dirección proxy, según el servicio de correo privado. Este valor puede estar vacío para usuarios de Sign in with Apple at Work & School. Por ejemplo, estudiantes menores pueden no tener correo electrónico.email_verified
(string || boolean) - Valor string o booleano que indica si el servicio verifica la dirección de correo electrónico. Puede ser un string (“true” o “false”) o un booleano (true o false). El sistema puede no verificar correos para usuarios de Sign in with Apple at Work & School, y este campo será “false” o false para esos usuarios.is_private_email
(string || boolean) - Valor string o booleano que indica si el correo electrónico compartido es una dirección proxy. Puede ser un string (“true” o “false”) o un booleano (true o false).real_user_status
(number) - Valor entero que indica si el usuario parece ser una persona real. Use este campo para mitigar fraudes. Los valores posibles son: 0 (o Unsupported), 1 (o Unknown), 2 (o LikelyReal). Este campo solo está presente en iOS 14 y posteriores, macOS 11 y posteriores, watchOS 7 y posteriores, tvOS 14 y posteriores. No está presente ni soportado en aplicaciones web.transfer_sub
(string) - Valor string que representa el identificador de transferencia para migrar usuarios a su equipo. Este campo solo está presente durante el periodo de transferencia de 60 días después de transferir una app.